import React from 'react'
import type { ButtonHTMLAttributes, FC, PropsWithChildren, MouseEvent } from 'react'

export interface ButtonProps {
  type?:'primary'|'link'|'dashed'|'ghost'|'danger'
  shape?:'circle'|'round'|'default'
  size?:'small'|'default'|'large'
  loading?:boolean|{delay:number}
  disabled?:boolean
  ghost?:boolean
  htmlType?:'button'|'submit'|'reset'
  block?:boolean
  icon?:string
  onClick?(ev:MouseEvent):void
}

interface ButtonGroupProps {
  size?:'small'|'large'
}

interface ButtonExtraProp {
  Group:FC<PropsWithChildren<ButtonGroupProps>>
}

const Button:FC<PropsWithChildren<ButtonProps>> & ButtonExtraProp = props => {
  const {
    disabled = false,
    loading = false,
    size = 'default',
    shape = 'default',
    block = false,
  } = props

  return (
    <button></button>
  )
}

Button.Group = props=>null

export default Button
